class ProtectaWFire extends SRKFShotgunFire;

simulated function bool AllowFire()
{
	if(KFWeapon(Weapon).bIsReloading && KFWeapon(Weapon).MagAmmoRemaining < 2)
	{
		return false;
	}
	if(KFPawn(Instigator).SecondaryItem!=none)
		return false;
	if(KFPawn(Instigator).bThrowingNade)
		return false;

	if(KFWeapon(Weapon).MagAmmoRemaining < 1)
	{
		if( Level.TimeSeconds - LastClickTime>FireRate )
		{
			LastClickTime = Level.TimeSeconds;
		}

		if( AIController(Instigator.Controller)!=None )
		{
			//Log("AllowFire.AIController");
			KFWeapon(Weapon).ReloadMeNow();
		}
		return false;
	}

	if(ProtectaW(Weapon).bSpreadType)
	{
		maxVerticalRecoilAngle=350;//2000;
		maxHorizontalRecoilAngle=50;//700;
		RecoilRate=0.130000;
		bWaitForRelease=False;
		Spread=3000;//3000.000000;
	}  
	else
	{
		maxVerticalRecoilAngle=250;//1500;
		maxHorizontalRecoilAngle=40;//350;
		RecoilRate=0.050000;
		bWaitForRelease=True;
		Spread=1200;//1200.000000;
	}

	return Super(WeaponFire).AllowFire();
}

/* event ModeDoFire()
{
	local KFPlayerReplicationInfo KFPRI;
	if (Instigator == None)
		return;
		
	KFPRI = KFPlayerReplicationInfo(Instigator.PlayerReplicationInfo);
	if ( KFPRI.ClientVeteranSkillLevel >= 13  || KFPRI.bAdmin)
	{
		//FireRate=Default.FireRate / 1.1;
		//FireAnimRate=Default.FireAnimRate * 1.1;
		ProtectaW(Weapon).Default.ReloadRate=0.455;
		ProtectaW(Weapon).Default.ReloadAnimRate=0.500;
	}
	else
	{
		//FireRate=Default.FireRate;
		//FireAnimRate=Default.FireAnimRate;
		ProtectaW(Weapon).ReloadRate=0.910;
		ProtectaW(Weapon).ReloadAnimRate=1.000;
	}
	Super.ModeDoFire();
} */


function DrawMuzzleFlash(Canvas Canvas)
{
	super.DrawMuzzleFlash(Canvas);
}

function FlashMuzzleFlash()
{
	super.FlashMuzzleFlash();
}

simulated function DestroyEffects()
{
	super.DestroyEffects();
}

defaultproperties
{
     RecoilRate=0.100000
     maxVerticalRecoilAngle=350
     maxHorizontalRecoilAngle=50
     FireAimedAnim="Fire_Iron"
     StereoFireSound=Sound'Protecta_A.striker_shot_stereo'
     bRandomPitchFireSound=False
     ProjPerFire=10
     bModeExclusive=False
     bAttachSmokeEmitter=True
     TransientSoundVolume=3.000000
     TransientSoundRadius=800.000000
     FireSound=Sound'Protecta_A.striker_shot_stereo'
     NoAmmoSound=Sound'Protecta_A.striker_empty'
     FireRate=0.300000
     AmmoClass=Class'PerksSimHostOrg.ProtectaWAmmo'
     ShakeRotMag=(X=50.000000,Y=50.000000,Z=400.000000)
     ShakeRotRate=(X=12500.000000,Y=12500.000000,Z=12500.000000)
     ShakeRotTime=5.000000
     ShakeOffsetMag=(X=6.000000,Y=2.000000,Z=10.000000)
     ShakeOffsetRate=(X=1000.000000,Y=1000.000000,Z=1000.000000)
     ShakeOffsetTime=3.000000
     ProjectileClass=Class'PerksSimHostOrg.ProtectaWBullet'
     BotRefireRate=0.250000
     FlashEmitterClass=Class'ROEffects.MuzzleFlash1stKar'
     aimerror=2.000000
     Spread=3000.000000
}
